package zsy.test.设计模式.singleton;

/**
 * 内部枚举实现单例
 * 避免了反射和反序列化的漏洞，但是没有懒加载
 *
 * @author zhangshuaiyin
 * @date 2022/8/8 10:40
 */
public class EnumSingleton {
    public static EnumSingleton getInstance() {
        return Singleton.INSTANCE.getInstance();
    }

    private static enum Singleton {
        /**
         * 单例
         */
        INSTANCE,
        ;
        private final EnumSingleton instance;
        Singleton() {
            instance = new EnumSingleton();
        }
        public EnumSingleton getInstance() {
            return instance;
        }
    }
}
